#define BYTE unsigned char

static BYTE chr20[3] = { 0x00, 0x00, 0x00 };
static BYTE chr21[3] = { 0x00, 0x5F, 0x00 };
static BYTE chr22[3] = { 0x07, 0x00, 0x07 };
static BYTE chr23[5] = { 0x14, 0x7F, 0x14, 0x7F, 0x14 };
static BYTE chr24[5] = { 0x26, 0x49, 0x7F, 0x49, 0x32 };
static BYTE chr25[5] = { 0x63, 0x13, 0x08, 0x64, 0x63 };
static BYTE chr26[5] = { 0x36, 0x49, 0x00, 0x22, 0x50 };
static BYTE chr27[3] = { 0x04, 0x03, 0x00 };
static BYTE chr28[3] = { 0x1C, 0x22, 0x41 };
static BYTE chr29[3] = { 0x41, 0x22, 0x1C };
static BYTE chr2A[5] = { 0x14, 0x2A, 0x1C, 0x2A, 0x14 };
static BYTE chr2B[5] = { 0x08, 0x08, 0x3E, 0x08, 0x08 };
static BYTE chr2C[2] = { 0x80, 0x60 };
static BYTE chr2D[5] = { 0x08, 0x08, 0x08, 0x08, 0x08 };
static BYTE chr2E[1] = { 0x40 };
static BYTE chr2F[5] = { 0x60, 0x10, 0x08, 0x04, 0x03 };
static BYTE chr30[5] = { 0x3E, 0x51, 0x49, 0x45, 0x3E };
static BYTE chr31[5] = { 0x00, 0x42, 0x7F, 0x40, 0x00 };
static BYTE chr32[5] = { 0x62, 0x51, 0x49, 0x49, 0x46 };
static BYTE chr33[5] = { 0x22, 0x41, 0x49, 0x49, 0x36 };
static BYTE chr34[5] = { 0x18, 0x14, 0x12, 0x7F, 0x10 };
static BYTE chr35[5] = { 0x27, 0x49, 0x49, 0x49, 0x31 };
static BYTE chr36[5] = { 0x3C, 0x4A, 0x49, 0x49, 0x30 };
static BYTE chr37[5] = { 0x01, 0x71, 0x09, 0x05, 0x03 };
static BYTE chr38[5] = { 0x36, 0x49, 0x49, 0x49, 0x36 };
static BYTE chr39[5] = { 0x06, 0x49, 0x49, 0x29, 0x1E };
static BYTE chr3A[1] = { 0x14 };
static BYTE chr3B[2] = { 0x80, 0x68 };
static BYTE chr3C[4] = { 0x08, 0x14, 0x22, 0x41 };
static BYTE chr3D[4] = { 0x14, 0x14, 0x14, 0x14 };
static BYTE chr3E[4] = { 0x41, 0x22, 0x14, 0x08 };
static BYTE chr3F[5] = { 0x02, 0x01, 0x51, 0x09, 0x06 };
static BYTE chr40[5] = { 0x3E, 0x41, 0x5D, 0x00, 0x4E };
static BYTE chr41[5] = { 0x7C, 0x12, 0x11, 0x12, 0x7C };
static BYTE chr42[5] = { 0x7F, 0x49, 0x49, 0x49, 0x36 };
static BYTE chr43[5] = { 0x3E, 0x41, 0x41, 0x41, 0x22 };
static BYTE chr44[5] = { 0x7F, 0x41, 0x41, 0x22, 0x1C };
static BYTE chr45[5] = { 0x7F, 0x49, 0x49, 0x49, 0x41 };
static BYTE chr46[5] = { 0x7F, 0x09, 0x09, 0x09, 0x01 };
static BYTE chr47[5] = { 0x3E, 0x41, 0x49, 0x29, 0x72 };
static BYTE chr48[5] = { 0x7F, 0x08, 0x08, 0x08, 0x7F };
static BYTE chr49[3] = { 0x41, 0x7F, 0x41 };
static BYTE chr4A[5] = { 0x20, 0x40, 0x41, 0x3F, 0x01 };
static BYTE chr4B[5] = { 0x7F, 0x08, 0x14, 0x22, 0x41 };
static BYTE chr4C[4] = { 0x7F, 0x40, 0x40, 0x40 };
static BYTE chr4D[5] = { 0x7F, 0x02, 0x0C, 0x02, 0x7F };
static BYTE chr4E[5] = { 0x7F, 0x06, 0x08, 0x30, 0x7F };
static BYTE chr4F[5] = { 0x3E, 0x41, 0x41, 0x41, 0x3E };
static BYTE chr50[5] = { 0x7F, 0x09, 0x09, 0x09, 0x06 };
static BYTE chr51[5] = { 0x3E, 0x41, 0x51, 0x21, 0x5E };
static BYTE chr52[5] = { 0x7F, 0x09, 0x19, 0x29, 0x46 };
static BYTE chr53[5] = { 0x26, 0x49, 0x49, 0x49, 0x32 };
static BYTE chr54[5] = { 0x01, 0x01, 0x7F, 0x01, 0x01 };
static BYTE chr55[5] = { 0x3F, 0x40, 0x40, 0x40, 0x3F };
static BYTE chr56[5] = { 0x0F, 0x30, 0x40, 0x30, 0x0F };
static BYTE chr57[7] = { 0x0F, 0x30, 0x40, 0x38, 0x40, 0x30, 0x0F };
static BYTE chr58[5] = { 0x63, 0x14, 0x08, 0x14, 0x63 };
static BYTE chr59[5] = { 0x07, 0x08, 0x70, 0x08, 0x07 };
static BYTE chr5A[5] = { 0x61, 0x51, 0x49, 0x45, 0x43 };
static BYTE chr5B[3] = { 0x7F, 0x41, 0x41 };
static BYTE chr5C[5] = { 0x03, 0x04, 0x08, 0x10, 0x60 };
static BYTE chr5D[3] = { 0x41, 0x41, 0x7F };
static BYTE chr5E[5] = { 0x08, 0x04, 0x02, 0x04, 0x08 };
static BYTE chr5F[5] = { 0x40, 0x40, 0x40, 0x40, 0x40 };
static BYTE chr60[3] = { 0x03, 0x04, 0x00 };
static BYTE chr61[4] = { 0x20, 0x54, 0x54, 0x78 };
static BYTE chr62[5] = { 0x7F, 0x28, 0x44, 0x44, 0x38 };
static BYTE chr63[4] = { 0x38, 0x44, 0x44, 0x28 };
static BYTE chr64[5] = { 0x38, 0x44, 0x44, 0x28, 0x7F };
static BYTE chr65[4] = { 0x38, 0x54, 0x54, 0x48 };
static BYTE chr66[4] = { 0x08, 0x7E, 0x09, 0x02 };
static BYTE chr67[4] = { 0x98, 0xA4, 0xA4, 0x58 };
static BYTE chr68[5] = { 0x7F, 0x08, 0x04, 0x04, 0x78 };
static BYTE chr69[2] = { 0x3D, 0x40 };
static BYTE chr6A[3] = { 0x80, 0x84, 0x7D };
static BYTE chr6B[4] = { 0x7F, 0x10, 0x28, 0x44 };
static BYTE chr6C[3] = { 0x01, 0x7F, 0x00 };
static BYTE chr6D[6] = { 0x7C, 0x08, 0x04, 0x78, 0x04, 0x78 };
static BYTE chr6E[5] = { 0x7C, 0x08, 0x04, 0x04, 0x78 };
static BYTE chr6F[4] = { 0x38, 0x44, 0x44, 0x38 };
static BYTE chr70[5] = { 0xFC, 0x18, 0x24, 0x24, 0x18 };
static BYTE chr71[5] = { 0x18, 0x24, 0x24, 0x18, 0xFC };
static BYTE chr72[5] = { 0x7C, 0x08, 0x04, 0x04, 0x08 };
static BYTE chr73[4] = { 0x48, 0x54, 0x54, 0x24 };
static BYTE chr74[3] = { 0x04, 0x3E, 0x44 };
static BYTE chr75[5] = { 0x3C, 0x40, 0x40, 0x20, 0x7C };
static BYTE chr76[5] = { 0x1C, 0x20, 0x40, 0x20, 0x1C };
static BYTE chr77[5] = { 0x3C, 0x40, 0x30, 0x40, 0x3C };
static BYTE chr78[5] = { 0x44, 0x28, 0x10, 0x28, 0x44 };
static BYTE chr79[4] = { 0x1C, 0xA0, 0xA0, 0x7C };
static BYTE chr7A[4] = { 0x64, 0x54, 0x54, 0x4C };
static BYTE chr7B[3] = { 0x08, 0x36, 0x41 };
static BYTE chr7C[3] = { 0x00, 0x7F, 0x00 };
static BYTE chr7D[3] = { 0x41, 0x36, 0x08 };
static BYTE chr7E[2] = { 0x00, 0x00 };
static BYTE chr7F[] = {0x00};
static BYTE chr80[7] = { 0x1C, 0x22, 0x41, 0x4F, 0x41, 0x22, 0x1C };
static BYTE chr81[7] = { 0x1C, 0x22, 0x41, 0x49, 0x45, 0x22, 0x1C };
static BYTE chr82[7] = { 0x1C, 0x22, 0x41, 0x49, 0x49, 0x2A, 0x1C };
static BYTE chr83[7] = { 0x1C, 0x22, 0x41, 0x49, 0x51, 0x22, 0x1C };
static BYTE chr84[7] = { 0x1C, 0x22, 0x41, 0x79, 0x41, 0x22, 0x1C };
static BYTE chr85[7] = { 0x1C, 0x22, 0x51, 0x49, 0x41, 0x22, 0x1C };
static BYTE chr86[7] = { 0x1C, 0x2A, 0x49, 0x49, 0x41, 0x22, 0x1C };
static BYTE chr87[7] = { 0x1C, 0x22, 0x45, 0x49, 0x41, 0x22, 0x1C };

int width_tbl[104] = { 3, 3, 3, 5, 5, 5, 5, 3, 3, 
       3, 5, 5, 2, 5, 1, 5, 5, 5, 
       5, 5, 5, 5, 5, 5, 5, 5, 1, 
       2, 4, 4, 4, 5, 5, 5, 5, 5, 
       5, 5, 5, 5, 5, 3, 5, 5, 4, 
       5, 5, 5, 5, 5, 5, 5, 5, 5, 
       5, 7, 5, 5, 5, 3, 5, 3, 5, 
       5, 3, 4, 5, 4, 5, 4, 4, 4, 
       5, 2, 3, 4, 3, 6, 5, 4, 5, 
       5, 5, 4, 3, 5, 5, 5, 5, 4, 
       4, 3, 3, 3, 2, 0, 7, 7, 7, 
       7, 7, 7, 7, 7 };
       
BYTE * chrtbl[104] = { chr20, chr21, chr22, chr23, chr24, chr25, chr26, 
     chr27, chr28, chr29, chr2A, chr2B, chr2C, chr2D, 
     chr2E, chr2F, chr30, chr31, chr32, chr33, chr34, 
     chr35, chr36, chr37, chr38, chr39, chr3A, chr3B, 
     chr3C, chr3D, chr3E, chr3F, chr40, chr41, chr42, 
     chr43, chr44, chr45, chr46, chr47, chr48, chr49, 
     chr4A, chr4B, chr4C, chr4D, chr4E, chr4F, chr50, 
     chr51, chr52, chr53, chr54, chr55, chr56, chr57, 
     chr58, chr59, chr5A, chr5B, chr5C, chr5D, chr5E, 
     chr5F, chr60, chr61, chr62, chr63, chr64, chr65, 
     chr66, chr67, chr68, chr69, chr6A, chr6B, chr6C, 
     chr6D, chr6E, chr6F, chr70, chr71, chr72, chr73, 
     chr74, chr75, chr76, chr77, chr78, chr79, chr7A, 
     chr7B, chr7C, chr7D, chr7E, chr7F, chr80, chr81, 
     chr82, chr83, chr84, chr85, chr86, chr87 };


